iT邦幫忙

2022 iThome 鐵人賽

DAY 23
0
自我挑戰組

iOS Junior的菜雞之路系列 第 23

為了讓大家都能理解我 BDD 行為驅動開發

  • 分享至 

  • xImage
  •  

Behavior 行為
Driven 驅動
Development 開發

所以什麼是BDD?
跟昨天的TDD又有什麼區別

TDD 可以讓開發者快速的驗證開發的功能,但是缺點是只有工程師們才能看懂TDD所以寫的內容

BDD就是為了這個所改進的方法

核心

可以讓工程師與非工程師像是PM、PO都能夠共同討論同一件事情

透過
Given: 前提條件
When: 做了...事情
That: 結果我應該得到什麼
去驗證結果

會用更為白話文的寫作方式,讓PM、PO都能更明瞭的去了解這個測試是在做什麼

引用大神的Code作為範例
https://medium.com/@kennethpoon/ios-xcuitest-cucumberish-5ea6121897fa

//A Given step definition
Given("the app is running") { (args, userInfo) -> Void in
    application.launch()
}


When("^I search for \"([^\\\"]*)\"$") { (args, userInfo) -> Void in
            let searchBar = XCUIApplication().otherElements["SearchField"] 
            searchBar.tap()            
            let text = (args?[0])!
            searchBar.typeText(text)
        }
Then("^I should see \"([^\\\"]*)\" in results$") { (args, userInfo) -> Void in
            let text = (args?[0])!
            self.waitForElementToAppear(XCUIApplication().cells.staticTexts[text])
        }

參考網址:
https://medium.com/@loverjersey/%E4%BD%BF%E7%94%A8-xcuitest-%E7%8E%A9-cucumber-xcuitest-with-cucumberish-a4770bec7f0c
https://medium.com/@kennethpoon/ios-xcuitest-cucumberish-5ea6121897fa


上一篇
自從使用了TDD 我的Function都考一百分
下一篇
畫面圖案大師 UIBeizerPath
系列文
iOS Junior的菜雞之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言